﻿using System;
using System.Collections.Generic;
using System.Text;
using BCCommon.Enums.Chats;

namespace BCDto.Chats.Message
{
    /// <summary>
    /// 消息请求模型。
    /// </summary>
    public class MessageRequestDto
    {
        /// <summary>
        /// 会话编号。
        /// </summary>
        public long ThreadId { get; set; }

        /// <summary>
        /// 消息类型。
        /// </summary>
        public MessageType MessageType { get; set; }

        /// <summary>
        /// 内容。
        /// </summary>
        public string Content { get; set; }

        /// <summary>
        /// 客户端消息编号。
        /// </summary>
        public string ClientMessageId { get; set; }

        /// <summary>
        /// 引用消息编号。
        /// </summary>
        public long? ReferenceMessageId { get; set; }

        /// <summary>
        /// 特别提醒 (@) 的用户编号。
        /// </summary>
        public IEnumerable<string> ReferenceUserIds { get; set; }

        /// <summary>
        /// 分享。
        /// </summary>
        public ShareDto Share { get; set; }

        /// <summary>
        /// 文件。
        /// </summary>
        public FileDto File { get; set; }

        /// <summary>
        /// 信息卡。
        /// </summary>
        public InfoCardDto InfoCard { get; set; }

        /// <summary>
        /// 原始数据。
        /// </summary>
        public object RawData { get; set; }
    }
}
